Tristate driver circuits are used to conditionally drive a signal onto a wire that is shared by multiple resources. Tristate driver circuits are sometimes used in conjunction with multiplexer circuits. The multiplexer may provide a selected input to the tristate driver which in turn drives the signal onto the shared resource wire. Multiplexers can be built in various ways. A multiplexer may be constructed from pass transistors. A multiplexer may also be constructed from a plurality of internal tristate circuits. A multiplexer may be a constructed from smaller multiplexer circuits which form stages of a larger multiplexer.
FIGS. 1A and 1B illustrate two different prior art tristate circuits. FIG. 1A illustrates a known inverting tristate driver 101. Circuit 101 is constructed from two stacked PMOS transistors, 11P and 12P and two stacked NMOS transistors 11N and 12N coupled as shown. The circuit is enabled as follows: A high enable signal at input en and a corresponding low negative enable signal at input n-en turn on, respectively, transistor 12N and transistor 11P which allows the signal at IN1A to drive an inverted signal at output OUT1A through transistors 12P and 11N. The opposite signals at input en and input n-en would turn off, respectively, transistor 12N and transistor 11P which in turn would prevent an input signal at input IN1A from driving a signal at output OUT1A.
FIG. 1B illustrates a known non-inverting tristate driver 102. Tristate driver 102 includes PMOS transistors 13P, 14P, 15P, and 16P and NMOS transistors 13N, 14N, 15N, and 16N. Circuit 102 is enabled as follows: A high enable signal at input en turns on transistor 13N and turns off transistor 14P and a low negative enable signal at input n-en turns off transistor 15N and turns on transistor 15P which allows the signal at IN1B to drive a non-inverted signal at output OUT1B through transistors 13P, 14N, 16P, and 16N. The opposite signal (i.e., a low) at enable input en would turn off transistor 13N and turn on transistor 14P and the opposite signal (i.e. a high) at negative enable input n-en would turn on transistor 15N and turn off transistor 15P which will prevent a signal at input IN1B from driving a signal at output OUT1B.